home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Delphi Programmer's Power Pack
/
Delphi Volume 1.iso
/
s_to_z
/
vrmeta
/
vrmeta.int
< prev
next >
Wrap
Text File
|
1996-09-15
|
2KB
|
63 lines
{Name: VRMETA v1.2
Copyright: Visual Solutions Ltd 1996
Purpose: Metafile with drawing capabilites}
unit VRMeta;
interface
{$B-}{will not work with full expr eval!!!}
uses
SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Forms, Dialogs;
Type
TOnPlayRecord=function(hdc: HDC; PHTable:PHandleTable; MFR:PMetaRecord; Handles:word) :word of object;
{Delphi for some reason does not define this structure!
This structure represents the PlaceableMetafile Header}
TMETAFILEHEADER =record
key:longint;
hmf:THandle;
bbox:TRect;
inch:word;
reserved:longint;
checksum:word;
end;
TVRMetafile = class(TMetafile)
public
constructor Create;
destructor Destroy; override;
property Canvas:TCanvas
property Handle:HMetafile
property TmpFileName:pstring
property IsDiskBased:boolean
property SetMM:boolean
procedure EnumMeta(hmf: HMETAFILE);
procedure Play(hdc:HDC);
procedure Print(hdc:HDC);
procedure Merge(MF: TMetafile);
procedure ScaleMerge(MF: TMetafile);
procedure ScaleMergeOffset(MF: TMetafile; Offset:TPoint);
procedure StretchMerge(MF: TMetafile;ImageWidth,ImageHeight:integer);
procedure StretchMergeOffset(MF: TMetafile; Offset:TPoint;ImageWidth,ImageHeight:integer);
procedure ResetDefaults;
procedure Close;
procedure FreeImage;
function ReleaseHandle:HMETAFILE;
{Events}
property OnPlayRecord:TOnPlayRecord read FOnPlayRecord write FOnPlayRecord;
procedure Assign(Source: TPersistent); override;
procedure LoadFromFile(const Filename: string); virtual;
procedure SaveToFile(const Filename: string); virtual;
procedure LoadFromStream(Stream: TStream); virtual;
procedure SaveToStream(Stream: TStream); virtual;
procedure LoadFromClipboardFormat(AFormat:Word; AData:THandle; APalette: HPALETTE); virtual;
procedure SaveToClipboardFormat(var AFormat:Word; var AData:THandle; var APalette:HPALETTE); virtual;
prcoedure CopyToClipBoard;
end;
{Generic global proc to trf any std metafile to clipboard}
procedure MetafileToClipBoard(MF:TMetafile);